El SIMT (Instrucción única, múltiples hilos) modelo es el latido del arquitectura de GPU. Mientras programas hilos individuales, el hardware los organiza en una jerarquía de dos niveles de grillas y bloques. Para maximizar la eficiencia, el hardware divide aún más estos bloques en unidades de 32 hilos llamadas warps.
1. SIMT frente a SIMD
A diferencia del SIMD de CPU (como SSE/AVX), donde debes empaquetar manualmente los datos en registros, SIMT permite que los hilos parezcan independientes. El hardware agrupa automáticamente los hilos en warps, obteniendo una sola instrucción para que todos los 32 hilos se ejecuten en sincronización.
2. Regla de linealización
Los programadores usan threadIdx.x, y, z para lógica, pero el hardware lo aplanado en una secuencia unidimensional para el planificación:
Debido a que la dimensión x es el índice más rápido, los hilos con valores consecutivos threadIdx.x valores suelen caer en el mismo warp, lo cual es crítico para coalescencia de memoria.